Debugging code is an important part of software development, including as part of the development of firmware. Firmware sometimes includes an internal debug system, which may record trace entries to provide a record of state information. These recorded trace entries can then be used to reconstruct behavior that may have led to an unpredicted or undesired result, and to resolve such behavior as part of the debug process. The firmware debug system employs certain configurable trace buffers, trace frames, and trace volumes for storing trace entries. Altered trace buffers, frames, and volumes are sometimes introduced by downloading a different release of firmware onto the host device.